package T02_explain;

import T01_JDBCUtils.JDBCUtils;
import org.junit.jupiter.api.Test;
import org.springframework.jdbc.core.JdbcTemplate;

import java.util.List;
import java.util.Map;

/**
 *
 * 一、SpringJDBC
 *    *Spring框架对JDBC的简单封装,提供了一个JDBCTemplate对象简化JDBC的开发
 *    *步骤:
 *       1.导入Jar包（大约五个jar包）
 *       2.创建一个jdbcTemplate对象,依赖于数据源DataSource
 *          *JdbcTemplate template=new JdbcTemplate(ds)
 *       3.调用jdbcTemplate的方法来完成CRUD的操作
 *          *update(); 执行DML语句  增,删,改语句
 *          *queryForMap():查询结果将结果集封装为Map集合
 *             *注意:这个方法查询的结果长度只能是1
 *          *queryForList():查询结果将结果集封装为List集合
 *             *注意:将每一条记录封装为一个Map集合,在将Map集合装载到List集合中
 *          *query():查询结果,将结果封装为javaBean对象（常用）
 *             *query的参数:RowMapper
 *                *一般我们使用BeanPropertyRowMapper实现类。可以完成数据到JavaBean的自动装配
 *                *new BeanPropertyRowMapper<类型>(Customers.class);
 *          *queryForObject:查询结果,将结果封装为一些对象(对象指的是基本数据类型)
 *                *一般用于聚合函数的查询
 *       4.练习
 *          需求1:修改客户生日
 *          需求2:添加一个用户
 *          需求3:删除一个用户
 *          需求4:查询id为1记录将其封装为map集合
 *          需求5:查询所有记录,将其封装为List
 *          需求6:查询所有记录将其封装为customers的集合
 *          需求7:查询总的记录数
 */
public class T01_JDBCTemplateTest01 {


    /**
     * 01_入门案例
     */
    @Test
    public  void test01(){
      //1.导入Jar包
      //2.创建JDBCTemplate对象
      JdbcTemplate template=new JdbcTemplate(JDBCUtils.getDataSource());
      //3.调用方法
      String sql="select * from  customers";
      List<Map<String, Object>> maps = template.queryForList(sql);
      System.out.println(maps);
   }


}
